package pt.compflow.activity;

import java.util.List;


/**
 * Listener for activity state events.
 * Used by controllers (e.g., JobController and WorkflowController) to know when the state of an activity changes.
 * WorkflowController implements this listener to receive notifications from the TaskController (regarding activities of a workflow).
 * JobController implements this listener to receive notifications from the WorkflowController (regarding workflows).
 *
 */
public interface ActivityControllerListener {

	public void onActivityFinished(String jobUri, String activityUri, List<String> nextActivities);

	public void onActivityCancelled(String jobUri, String activityUri);

	public void onActivityStarted(String jobUri, String activityUri);

	public void onActivityError(String jobUri, String activityUri);
	
	public void onActivityTimeout(String jobUri, String activityUri);
	
}
